hamiltonian cycle backtracking algorithm